package com.rockcent.mall.lib.dto;

import com.rockcent.common.domain.DtoEntity;

import javax.persistence.Column;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 积分卡券使用情况
 * Created by zhangjh on 2016/12/14.
 */
public class IntegrationCouponWalletDto  extends DtoEntity {

    /**
     *
     */
    private Long couponId;


    /**
     *
     */
    private BigDecimal faceValue;

    /**
     * 兑换发码：唯一
     */
    private String exchangeCode;

    /**
     * 兑换数量：在积分渠道兑换的情况
     */
    private Long exchangeNum;

    /**
     * 领取数量：到平台兑换，叫领取
     */
    private Long receiveNum;

    /**
     * 使用数量
     */
    private Long useNum;

    /**
     * 兑换时间
     */
    private String exchangeDate;

    /**
     * 领取时间
     */
    private String receiveDate;

    /**
     * 使用时间
     */
    private String useDate;


    /**
     * 积分渠道id
     */
    private Long integrationChannelId;

    /**
     *
     */
    private Long merchantId;

    /**
     *
     */
    private String merchantName;

    /**
     *
     */
    private Long mallId;

    /**
     *
     */
    private Long customerId;

    /**
     *
     */
    private String customerName;

    /**
     *
     */
    private Long totalNum;


    /**
     *
     */
    private Long batchPutNo;

    /**
     *
     */
    private String flagCode;

    /**
     *
     */
    private String name;


    @Column(columnDefinition = "datetime comment '有效期开始时间'")
    private Date dateEnabled;
    @Column(columnDefinition = "datetime comment '有效期结束时间'")
    private Date dateDisabled;

    public Long getCouponId() {
        return couponId;
    }

    public void setCouponId(Long couponId) {
        this.couponId = couponId;
    }

    public String getExchangeCode() {
        return exchangeCode;
    }

    public void setExchangeCode(String exchangeCode) {
        this.exchangeCode = exchangeCode;
    }

    public Long getUseNum() {
        return useNum;
    }

    public void setUseNum(Long useNum) {
        this.useNum = useNum;
    }

    public Long getIntegrationChannelId() {
        return integrationChannelId;
    }

    public void setIntegrationChannelId(Long integrationChannelId) {
        this.integrationChannelId = integrationChannelId;
    }

    public Long getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(Long merchantId) {
        this.merchantId = merchantId;
    }

    public Long getMallId() {
        return mallId;
    }

    public void setMallId(Long mallId) {
        this.mallId = mallId;
    }

    public Long getCustomerId() {
        return customerId;
    }

    public void setCustomerId(Long customerId) {
        this.customerId = customerId;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public Long getExchangeNum() {
        return exchangeNum;
    }

    public void setExchangeNum(Long exchangeNum) {
        this.exchangeNum = exchangeNum;
    }

    public Long getReceiveNum() {
        return receiveNum;
    }

    public void setReceiveNum(Long receiveNum) {
        this.receiveNum = receiveNum;
    }

    public String getExchangeDate() {
        return exchangeDate;
    }

    public void setExchangeDate(String exchangeDate) {
        this.exchangeDate = exchangeDate;
    }

    public String getReceiveDate() {
        return receiveDate;
    }

    public void setReceiveDate(String receiveDate) {
        this.receiveDate = receiveDate;
    }

    public String getUseDate() {
        return useDate;
    }

    public void setUseDate(String useDate) {
        this.useDate = useDate;
    }

    public BigDecimal getFaceValue() {
        return faceValue;
    }

    public void setFaceValue(BigDecimal faceValue) {
        this.faceValue = faceValue;
    }

    public String getMerchantName() {
        return merchantName;
    }

    public void setMerchantName(String merchantName) {
        this.merchantName = merchantName;
    }

    public Long getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(Long totalNum) {
        this.totalNum = totalNum;
    }

    public Long getBatchPutNo() {
        return batchPutNo;
    }

    public void setBatchPutNo(Long batchPutNo) {
        this.batchPutNo = batchPutNo;
    }

    public String getFlagCode() {
        return flagCode;
    }

    public void setFlagCode(String flagCode) {
        this.flagCode = flagCode;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "IntegrationCouponWallet{" +
                "couponId=" + couponId +
                ", faceValue=" + faceValue +
                ", exchangeCode='" + exchangeCode + '\'' +
                ", exchangeNum=" + exchangeNum +
                ", receiveNum=" + receiveNum +
                ", useNum=" + useNum +
                ", exchangeDate=" + exchangeDate +
                ", receiveDate=" + receiveDate +
                ", useDate=" + useDate +
                ", integrationChannelId=" + integrationChannelId +
                ", merchantId=" + merchantId +
                ", merchantName='" + merchantName + '\'' +
                ", mallId=" + mallId +
                ", customerId=" + customerId +
                ", customerName='" + customerName + '\'' +
                ", totalNum=" + totalNum +
                ", batchPutNo=" + batchPutNo +
                ", flagCode='" + flagCode + '\'' +
                ", name='" + name + '\'' +
                '}';
    }
}
